package com.strat.searcher.analisys.recognize;

import java.util.List;

import com.strat.searcher.analisys.tokenize.Token;

/**
 * Stands for recognition type of Tokens
 * 
 * @author Oleksandr Stratiyevskyy
 * @version $Revision$
 */
public interface Recognizable {

    /**
     * Initialization code goes here.
     * 
     * @throws Exception
     */
    public void init();

    /**
     * Runs through the list of input tokens, classifying as many tokens as it
     * can into this particular entity.
     * 
     * @param tokens
     *            the List of Tokens.
     * @return the output List of Tokens.
     */
    public List<Token> recognize(List<Token> tokens);

}
